<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>


        // 基本数据类型
        // 引用数据类型  数组，对象，函数(一段代码)


        // function fn() {
        //     console.log(a);
        // }

        // fn()






        // 回调：把函数作为参数


        // 这个匿名函数将会在1s之后被被调用
        setTimeout(function(){} , 1000)


        // 数组的迭代方法  


        function myForEach(arr , cb ) {
            for(let i = 0 ; i < arr.length ; i++) {
                // 要做一件事情
                cb(arr[i] , i) ;
            }
        }


        myForEach([1,2,3] , function(a , b){
            // a  数组中的值
            // b  代表数组的下标
        })





        // map   遍历且改变数组中的值
        function myMap(arr , cb) {
            const newArr = [] ;
            for(let i = 0 ; i < arr.length ; i++) {
                // const a = arr[i] * 2 ;
                const a = cb(arr[i]) ;
                newArr.push(a) ;
            }
            return newArr ;
        }


        console.log(myMap([1,2,3] , function(v) {
            return v * 5
        }));



        



    </script>
    
</body>
</html>